package top.korori.service;

import com.baomidou.mybatisplus.extension.service.IService;
import top.korori.entity.SysRole;
import top.korori.entity.bo.SysRoleBo;
import top.korori.entity.vo.SysRoleVo;

import java.util.List;

/**
 * 
 * 后台角色表 服务类
 * 
 *
 * @author korori
 * @since
 */
public interface SysRoleService extends IService<SysRole> {

    /**
     * 获取角色和对应菜单信息
     * @param roleId
     * @return
     */
    SysRoleVo getRoleMenu(Long roleId);

    /**
     * 添加角色和菜单
     * @param sysRoleBo
     */
    void add(SysRoleBo sysRoleBo);

    /**
     * 更新角色和菜单
     * @param sysRoleBo
     */
    void edit(SysRoleBo sysRoleBo);

    /**
     * 根据多个角色id删除角色和他的菜单关联
     * @param roleIds
     */
    void del(List<Long> roleIds);

    /**
     * 获取正常状态角色列表
     * @return
     */
    List<SysRole> getNormal();
}
